<!DOCTYPE html>
<html lang="en">
  <head>
    <title>KingfisherManager Class Reference</title>
    <link rel="stylesheet" type="text/css" href="../css/jazzy.css" />
    <link rel="stylesheet" type="text/css" href="../css/highlight.css" />
    <meta charset="utf-8">
    <script src="../js/jquery.min.js" defer></script>
    <script src="../js/jazzy.js" defer></script>
    
    <script src="../js/lunr.min.js" defer></script>
    <script src="../js/typeahead.jquery.js" defer></script>
    <script src="../js/jazzy.search.js" defer></script>
  </head>
  <body>

    <a name="//apple_ref/swift/Class/KingfisherManager" class="dashAnchor"></a>

    <a title="KingfisherManager Class Reference"></a>

    <header class="header">
      <p class="header-col header-col--primary">
        <a class="header-link" href="../index.html">
          Kingfisher 5.12.0 Docs
        </a>
         (83% documented)
      </p>
    
      <p class="header-col--secondary">
        <form role="search" action="../search.json">
          <input type="text" placeholder="Search documentation" data-typeahead>
        </form>
      </p>
    
        <p class="header-col header-col--secondary">
          <a class="header-link" href="https://github.com/onevcat/Kingfisher">
            <img class="header-icon" src="../img/gh.png"/>
            View on GitHub
          </a>
        </p>
    
        <p class="header-col header-col--secondary">
          <a class="header-link" href="dash-feed://http%3A%2F%2Fonevcat%2Egithub%2Eio%2FKingfisher%2Fdocsets%2FKingfisher%2Exml">
            <img class="header-icon" src="../img/dash.png"/>
            Install in Dash
          </a>
        </p>
    </header>

    <p class="breadcrumbs">
      <a class="breadcrumb" href="../index.html">Kingfisher Reference</a>
      <img class="carat" src="../img/carat.png" />
      KingfisherManager Class Reference
    </p>

    <div class="content-wrapper">
      <nav class="navigation">
        <ul class="nav-groups">
          <li class="nav-group-name">
            <a class="nav-group-name-link" href="../Classes.html">Classes</a>
            <ul class="nav-group-tasks">
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Classes/AnimatedImageView.html">AnimatedImageView</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Classes/AnimatedImageView/RepeatCount.html">– RepeatCount</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Classes/ImageCache.html">ImageCache</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Classes/ImageDownloader.html">ImageDownloader</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Classes/ImagePrefetcher.html">ImagePrefetcher</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Classes/KingfisherManager.html">KingfisherManager</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Classes/RetrieveImageTask.html">RetrieveImageTask</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Classes/SessionDataTask.html">SessionDataTask</a>
              </li>
            </ul>
          </li>
          <li class="nav-group-name">
            <a class="nav-group-name-link" href="../Global%20Variables.html">Global Variables</a>
            <ul class="nav-group-tasks">
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Global%20Variables.html#/s:10Kingfisher0A23DiskCacheCleanedHashKeySSvp">KingfisherDiskCacheCleanedHashKey</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Global%20Variables.html#/s:10Kingfisher0A11ErrorDomainSSvp">KingfisherErrorDomain</a>
              </li>
            </ul>
          </li>
          <li class="nav-group-name">
            <a class="nav-group-name-link" href="../Enums.html">Enumerations</a>
            <ul class="nav-group-tasks">
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Enums/CacheType.html">CacheType</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Enums/CallbackQueue.html">CallbackQueue</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Enums/ContentMode.html">ContentMode</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Enums/DiskStorage.html">DiskStorage</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Enums/DiskStorage/Backend.html">– Backend</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Enums/DiskStorage/Config.html">– Config</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Enums/ExpirationExtending.html">ExpirationExtending</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Enums/ImageCacheResult.html">ImageCacheResult</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Enums/ImageFormat.html">ImageFormat</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Enums/ImageFormat/JPEGMarker.html">– JPEGMarker</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Enums/ImageProcessItem.html">ImageProcessItem</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Enums/ImageTransition.html">ImageTransition</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Enums/ImageTransition.html">ImageTransition</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Enums/IndicatorSizeStrategy.html">IndicatorSizeStrategy</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Enums/IndicatorType.html">IndicatorType</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Enums/KingfisherError.html">KingfisherError</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Enums/KingfisherError/RequestErrorReason.html">– RequestErrorReason</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Enums/KingfisherError/ResponseErrorReason.html">– ResponseErrorReason</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Enums/KingfisherError/CacheErrorReason.html">– CacheErrorReason</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Enums/KingfisherError/ProcessorErrorReason.html">– ProcessorErrorReason</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Enums/KingfisherError/ImageSettingErrorReason.html">– ImageSettingErrorReason</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Enums/KingfisherOptionsInfoItem.html">KingfisherOptionsInfoItem</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Enums/MemoryStorage.html">MemoryStorage</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Enums/MemoryStorage/Backend.html">– Backend</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Enums/MemoryStorage/Config.html">– Config</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Enums/Result.html">Result</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Enums/Source.html">Source</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Enums/Source/Identifier.html">– Identifier</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Enums/StorageExpiration.html">StorageExpiration</a>
              </li>
            </ul>
          </li>
          <li class="nav-group-name">
            <a class="nav-group-name-link" href="../Extensions.html">Extensions</a>
            <ul class="nav-group-tasks">
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Extensions.html#/c:@S@CGSize">CGSize</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Extensions/Collection.html">Collection</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Extensions/Data.html">Data</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Extensions.html#/s:10Kingfisher21KFCrossPlatformButtona">KFCrossPlatformButton</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Extensions/KFCrossPlatformImage.html">KFCrossPlatformImage</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Extensions.html#/s:10Kingfisher24KFCrossPlatformImageViewa">KFCrossPlatformImageView</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Extensions/KingfisherWrapper.html">KingfisherWrapper</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Extensions/Notification.html">Notification</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Extensions/Notification/Name.html">– Name</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Extensions.html#/s:SS">String</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Extensions.html#/c:objc(cs)UIApplication">UIApplication</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Extensions/URL.html">URL</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Extensions.html#/WKInterfaceImage">WKInterfaceImage</a>
              </li>
            </ul>
          </li>
          <li class="nav-group-name">
            <a class="nav-group-name-link" href="../Functions.html">Functions</a>
            <ul class="nav-group-tasks">
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Functions.html#/s:10Kingfisher2ggoiyAA14ImageProcessor_pAaC_p_AaC_ptF">&gt;&gt;(_:_:)</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Functions.html#/s:10Kingfisher2ogoiyAA14ImageProcessor_pAaC_p_AaC_ptF">|&gt;(_:_:)</a>
              </li>
            </ul>
          </li>
          <li class="nav-group-name">
            <a class="nav-group-name-link" href="../Protocols.html">Protocols</a>
            <ul class="nav-group-tasks">
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Protocols/AnimatedImageViewDelegate.html">AnimatedImageViewDelegate</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Protocols/AuthenticationChallengeResponsable.html">AuthenticationChallengeResponsable</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Protocols/CIImageProcessor.html">CIImageProcessor</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Protocols/CacheCostCalculable.html">CacheCostCalculable</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Protocols/CacheSerializer.html">CacheSerializer</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Protocols/DataTransformable.html">DataTransformable</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Protocols/ImageDataProvider.html">ImageDataProvider</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Protocols/ImageDownloadRedirectHandler.html">ImageDownloadRedirectHandler</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Protocols/ImageDownloadRequestModifier.html">ImageDownloadRequestModifier</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Protocols/ImageDownloaderDelegate.html">ImageDownloaderDelegate</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Protocols/ImageModifier.html">ImageModifier</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Protocols/ImageProcessor.html">ImageProcessor</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Protocols/Indicator.html">Indicator</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Protocols/KingfisherCompatible.html">KingfisherCompatible</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Protocols/KingfisherCompatibleValue.html">KingfisherCompatibleValue</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Protocols/Placeholder.html">Placeholder</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Protocols/Resource.html">Resource</a>
              </li>
            </ul>
          </li>
          <li class="nav-group-name">
            <a class="nav-group-name-link" href="../Structs.html">Structures</a>
            <ul class="nav-group-tasks">
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/AlignmentRectInsetsImageModifier.html">AlignmentRectInsetsImageModifier</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/AnyImageModifier.html">AnyImageModifier</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/AnyModifier.html">AnyModifier</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/AnyRedirectHandler.html">AnyRedirectHandler</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/Base64ImageDataProvider.html">Base64ImageDataProvider</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/BlackWhiteProcessor.html">BlackWhiteProcessor</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/BlendImageProcessor.html">BlendImageProcessor</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/BlurImageProcessor.html">BlurImageProcessor</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/CacheStoreResult.html">CacheStoreResult</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/ColorControlsProcessor.html">ColorControlsProcessor</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/CompositingImageProcessor.html">CompositingImageProcessor</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/CroppingImageProcessor.html">CroppingImageProcessor</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/DefaultCacheSerializer.html">DefaultCacheSerializer</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/DefaultImageModifier.html">DefaultImageModifier</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/DefaultImageProcessor.html">DefaultImageProcessor</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/DownloadTask.html">DownloadTask</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/DownsamplingImageProcessor.html">DownsamplingImageProcessor</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/Filter.html">Filter</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/FlipsForRightToLeftLayoutDirectionImageModifier.html">FlipsForRightToLeftLayoutDirectionImageModifier</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/FormatIndicatedCacheSerializer.html">FormatIndicatedCacheSerializer</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/ImageCreatingOptions.html">ImageCreatingOptions</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/ImageLoadingResult.html">ImageLoadingResult</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/ImageProgressive.html">ImageProgressive</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/ImageResource.html">ImageResource</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/KingfisherParsedOptionsInfo.html">KingfisherParsedOptionsInfo</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/KingfisherWrapper.html">KingfisherWrapper</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/LocalFileImageDataProvider.html">LocalFileImageDataProvider</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/OverlayImageProcessor.html">OverlayImageProcessor</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/PropagationError.html">PropagationError</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/RawImageDataProvider.html">RawImageDataProvider</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/RectCorner.html">RectCorner</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/RenderingModeImageModifier.html">RenderingModeImageModifier</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/ResizingImageProcessor.html">ResizingImageProcessor</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs.html#/s:10Kingfisher25RetrieveImageDownloadTaskV">RetrieveImageDownloadTask</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/RetrieveImageResult.html">RetrieveImageResult</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/RoundCornerImageProcessor.html">RoundCornerImageProcessor</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/TintImageProcessor.html">TintImageProcessor</a>
              </li>
            </ul>
          </li>
          <li class="nav-group-name">
            <a class="nav-group-name-link" href="../Typealiases.html">Type Aliases</a>
            <ul class="nav-group-tasks">
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Typealiases.html#/s:10Kingfisher6Buttona">Button</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Typealiases.html#/s:10Kingfisher5Colora">Color</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Typealiases.html#/s:10Kingfisher17CompletionHandlera">CompletionHandler</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Typealiases.html#/s:10Kingfisher21DownloadProgressBlocka">DownloadProgressBlock</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Typealiases.html#/s:10Kingfisher24DownloadTaskUpdatedBlocka">DownloadTaskUpdatedBlock</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Typealiases.html#/s:10Kingfisher5Imagea">Image</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Typealiases.html#/s:10Kingfisher32ImageDownloaderCompletionHandlera">ImageDownloaderCompletionHandler</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Typealiases.html#/s:10Kingfisher28ImageDownloaderProgressBlocka">ImageDownloaderProgressBlock</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Typealiases.html#/s:10Kingfisher9ImageViewa">ImageView</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Typealiases.html#/IndicatorView">IndicatorView</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Typealiases.html#/s:10Kingfisher13IndicatorViewa">IndicatorView</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Typealiases.html#/KFCrossPlatformButton">KFCrossPlatformButton</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Typealiases.html#/s:10Kingfisher21KFCrossPlatformButtona">KFCrossPlatformButton</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Typealiases.html#/KFCrossPlatformColor">KFCrossPlatformColor</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Typealiases.html#/s:10Kingfisher20KFCrossPlatformColora">KFCrossPlatformColor</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Typealiases.html#/KFCrossPlatformImage">KFCrossPlatformImage</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Typealiases.html#/s:10Kingfisher20KFCrossPlatformImagea">KFCrossPlatformImage</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Typealiases.html#/KFCrossPlatformImageView">KFCrossPlatformImageView</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Typealiases.html#/s:10Kingfisher24KFCrossPlatformImageViewa">KFCrossPlatformImageView</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Typealiases.html#/KFCrossPlatformView">KFCrossPlatformView</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Typealiases.html#/s:10Kingfisher19KFCrossPlatformViewa">KFCrossPlatformView</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Typealiases.html#/s:10Kingfisher0A11OptionsInfoa">KingfisherOptionsInfo</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Typealiases.html#/s:10Kingfisher27PrefetcherCompletionHandlera">PrefetcherCompletionHandler</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Typealiases.html#/s:10Kingfisher23PrefetcherProgressBlocka">PrefetcherProgressBlock</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Typealiases.html#/s:10Kingfisher33PrefetcherSourceCompletionHandlera">PrefetcherSourceCompletionHandler</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Typealiases.html#/s:10Kingfisher29PrefetcherSourceProgressBlocka">PrefetcherSourceProgressBlock</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Typealiases.html#/s:10Kingfisher11Transformera">Transformer</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Typealiases.html#/s:10Kingfisher4Viewa">View</a>
              </li>
            </ul>
          </li>
        </ul>
      </nav>
      <article class="main-content">

        <section class="section">
          <div class="section-content top-matter">
            <h1>KingfisherManager</h1>
              <div class="declaration">
                <div class="language">
                  <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">class</span> <span class="kt">KingfisherManager</span></code></pre>

                </div>
              </div>
            <p>Main manager class of Kingfisher. It connects Kingfisher downloader and cache,
to provide a set of convenience methods to use Kingfisher for tasks.
You can use this class to retrieve an image via a specified URL from web or cache.</p>

          </div>
        </section>

        <section class="section">
          <div class="section-content">
            <div class="task-group">
              <ul class="item-container">
                <li class="item">
                  <div>
                    <code>
                    <a name="/s:10Kingfisher0A7ManagerC6sharedACvpZ"></a>
                    <a name="//apple_ref/swift/Variable/shared" class="dashAnchor"></a>
                    <a class="token" href="#/s:10Kingfisher0A7ManagerC6sharedACvpZ">shared</a>
                    </code>
                  </div>
                  <div class="height-container">
                    <div class="pointer-container"></div>
                    <section class="section">
                      <div class="pointer"></div>
                      <div class="abstract">
                        <p>Represents a shared manager used across Kingfisher.
Use this instance for getting or storing images with Kingfisher.</p>

                      </div>
                      <div class="declaration">
                        <h4>Declaration</h4>
                        <div class="language">
                          <p class="aside-title">Swift</p>
                          <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">static</span> <span class="k">let</span> <span class="nv">shared</span><span class="p">:</span> <span class="kt">KingfisherManager</span></code></pre>

                        </div>
                      </div>
                      <div class="slightly-smaller">
                        <a href="https://github.com/onevcat/Kingfisher/tree/5.12.0/Sources/General/KingfisherManager.swift#L79">Show on GitHub</a>
                      </div>
                    </section>
                  </div>
                </li>
                <li class="item">
                  <div>
                    <code>
                    <a name="/s:10Kingfisher0A7ManagerC5cacheAA10ImageCacheCvp"></a>
                    <a name="//apple_ref/swift/Property/cache" class="dashAnchor"></a>
                    <a class="token" href="#/s:10Kingfisher0A7ManagerC5cacheAA10ImageCacheCvp">cache</a>
                    </code>
                  </div>
                  <div class="height-container">
                    <div class="pointer-container"></div>
                    <section class="section">
                      <div class="pointer"></div>
                      <div class="abstract">
                        <p>The <code><a href="../Classes/ImageCache.html">ImageCache</a></code> used by this manager. It is <code><a href="../Classes/ImageCache.html#/s:10Kingfisher10ImageCacheC7defaultACvpZ">ImageCache.default</a></code> by default.
If a cache is specified in <code><a href="../Classes/KingfisherManager.html#/s:10Kingfisher0A7ManagerC14defaultOptionsSayAA0aD8InfoItemOGvp">KingfisherManager.defaultOptions</a></code>, the value in <code><a href="../Classes/KingfisherManager.html#/s:10Kingfisher0A7ManagerC14defaultOptionsSayAA0aD8InfoItemOGvp">defaultOptions</a></code> will be
used instead.</p>

                      </div>
                      <div class="declaration">
                        <h4>Declaration</h4>
                        <div class="language">
                          <p class="aside-title">Swift</p>
                          <pre class="highlight swift"><code><span class="kd">public</span> <span class="k">var</span> <span class="nv">cache</span><span class="p">:</span> <span class="kt"><a href="../Classes/ImageCache.html">ImageCache</a></span></code></pre>

                        </div>
                      </div>
                      <div class="slightly-smaller">
                        <a href="https://github.com/onevcat/Kingfisher/tree/5.12.0/Sources/General/KingfisherManager.swift#L85">Show on GitHub</a>
                      </div>
                    </section>
                  </div>
                </li>
                <li class="item">
                  <div>
                    <code>
                    <a name="/s:10Kingfisher0A7ManagerC10downloaderAA15ImageDownloaderCvp"></a>
                    <a name="//apple_ref/swift/Property/downloader" class="dashAnchor"></a>
                    <a class="token" href="#/s:10Kingfisher0A7ManagerC10downloaderAA15ImageDownloaderCvp">downloader</a>
                    </code>
                  </div>
                  <div class="height-container">
                    <div class="pointer-container"></div>
                    <section class="section">
                      <div class="pointer"></div>
                      <div class="abstract">
                        <p>The <code><a href="../Classes/ImageDownloader.html">ImageDownloader</a></code> used by this manager. It is <code><a href="../Classes/ImageDownloader.html#/s:10Kingfisher15ImageDownloaderC7defaultACvpZ">ImageDownloader.default</a></code> by default.
If a downloader is specified in <code><a href="../Classes/KingfisherManager.html#/s:10Kingfisher0A7ManagerC14defaultOptionsSayAA0aD8InfoItemOGvp">KingfisherManager.defaultOptions</a></code>, the value in <code><a href="../Classes/KingfisherManager.html#/s:10Kingfisher0A7ManagerC14defaultOptionsSayAA0aD8InfoItemOGvp">defaultOptions</a></code> will be
used instead.</p>

                      </div>
                      <div class="declaration">
                        <h4>Declaration</h4>
                        <div class="language">
                          <p class="aside-title">Swift</p>
                          <pre class="highlight swift"><code><span class="kd">public</span> <span class="k">var</span> <span class="nv">downloader</span><span class="p">:</span> <span class="kt"><a href="../Classes/ImageDownloader.html">ImageDownloader</a></span></code></pre>

                        </div>
                      </div>
                      <div class="slightly-smaller">
                        <a href="https://github.com/onevcat/Kingfisher/tree/5.12.0/Sources/General/KingfisherManager.swift#L90">Show on GitHub</a>
                      </div>
                    </section>
                  </div>
                </li>
                <li class="item">
                  <div>
                    <code>
                    <a name="/s:10Kingfisher0A7ManagerC14defaultOptionsSayAA0aD8InfoItemOGvp"></a>
                    <a name="//apple_ref/swift/Property/defaultOptions" class="dashAnchor"></a>
                    <a class="token" href="#/s:10Kingfisher0A7ManagerC14defaultOptionsSayAA0aD8InfoItemOGvp">defaultOptions</a>
                    </code>
                  </div>
                  <div class="height-container">
                    <div class="pointer-container"></div>
                    <section class="section">
                      <div class="pointer"></div>
                      <div class="abstract">
                        <p>Default options used by the manager. This option will be used in
Kingfisher manager related methods, as well as all view extension methods.
You can also passing other options for each image task by sending an <code>options</code> parameter
to Kingfisher&rsquo;s APIs. The per image options will overwrite the default ones,
if the option exists in both.</p>

                      </div>
                      <div class="declaration">
                        <h4>Declaration</h4>
                        <div class="language">
                          <p class="aside-title">Swift</p>
                          <pre class="highlight swift"><code><span class="kd">public</span> <span class="k">var</span> <span class="nv">defaultOptions</span><span class="p">:</span> <span class="kt"><a href="../Typealiases.html#/s:10Kingfisher0A11OptionsInfoa">KingfisherOptionsInfo</a></span></code></pre>

                        </div>
                      </div>
                      <div class="slightly-smaller">
                        <a href="https://github.com/onevcat/Kingfisher/tree/5.12.0/Sources/General/KingfisherManager.swift#L97">Show on GitHub</a>
                      </div>
                    </section>
                  </div>
                </li>
                <li class="item">
                  <div>
                    <code>
                    <a name="/s:10Kingfisher0A7ManagerC10downloader5cacheAcA15ImageDownloaderC_AA0E5CacheCtcfc"></a>
                    <a name="//apple_ref/swift/Method/init(downloader:cache:)" class="dashAnchor"></a>
                    <a class="token" href="#/s:10Kingfisher0A7ManagerC10downloader5cacheAcA15ImageDownloaderC_AA0E5CacheCtcfc">init(downloader:cache:)</a>
                    </code>
                  </div>
                  <div class="height-container">
                    <div class="pointer-container"></div>
                    <section class="section">
                      <div class="pointer"></div>
                      <div class="abstract">
                        <p>Creates an image setting manager with specified downloader and cache.</p>

                      </div>
                      <div class="declaration">
                        <h4>Declaration</h4>
                        <div class="language">
                          <p class="aside-title">Swift</p>
                          <pre class="highlight swift"><code><span class="kd">public</span> <span class="nf">init</span><span class="p">(</span><span class="nv">downloader</span><span class="p">:</span> <span class="kt"><a href="../Classes/ImageDownloader.html">ImageDownloader</a></span><span class="p">,</span> <span class="nv">cache</span><span class="p">:</span> <span class="kt"><a href="../Classes/ImageCache.html">ImageCache</a></span><span class="p">)</span></code></pre>

                        </div>
                      </div>
                      <div>
                        <h4>Parameters</h4>
                        <table class="graybox">
                          <tbody>
                            <tr>
                              <td>
                                <code>
                                <em>downloader</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>The image downloader used to download images.</p>
                                </div>
                              </td>
                            </tr>
                            <tr>
                              <td>
                                <code>
                                <em>cache</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>The image cache which stores memory and disk images.</p>
                                </div>
                              </td>
                            </tr>
                          </tbody>
                        </table>
                      </div>
                      <div class="slightly-smaller">
                        <a href="https://github.com/onevcat/Kingfisher/tree/5.12.0/Sources/General/KingfisherManager.swift#L115-L121">Show on GitHub</a>
                      </div>
                    </section>
                  </div>
                </li>
              </ul>
            </div>
            <div class="task-group">
              <div class="task-name-container">
                <a name="/Getting%20Images"></a>
                <a name="//apple_ref/swift/Section/Getting Images" class="dashAnchor"></a>
                <div class="section-name-container">
                  <a class="section-name-link" href="#/Getting%20Images"></a>
                  <h3 class="section-name"><p>Getting Images</p>
</h3>
                </div>
              </div>
              <ul class="item-container">
                <li class="item">
                  <div>
                    <code>
                    <a name="/s:10Kingfisher0A7ManagerC13retrieveImage4with7options13progressBlock19downloadTaskUpdated17completionHandlerAA08DownloadJ0VSgAA8Resource_p_SayAA0A15OptionsInfoItemOGSgys5Int64V_AStcSgyALcSgyAA6ResultOyAA08RetrievedT0VAA0A5ErrorOGcSgtF"></a>
                    <a name="//apple_ref/swift/Method/retrieveImage(with:options:progressBlock:downloadTaskUpdated:completionHandler:)" class="dashAnchor"></a>
                    <a class="token" href="#/s:10Kingfisher0A7ManagerC13retrieveImage4with7options13progressBlock19downloadTaskUpdated17completionHandlerAA08DownloadJ0VSgAA8Resource_p_SayAA0A15OptionsInfoItemOGSgys5Int64V_AStcSgyALcSgyAA6ResultOyAA08RetrievedT0VAA0A5ErrorOGcSgtF">retrieveImage(with:options:progressBlock:downloadTaskUpdated:completionHandler:)</a>
                    </code>
                  </div>
                  <div class="height-container">
                    <div class="pointer-container"></div>
                    <section class="section">
                      <div class="pointer"></div>
                      <div class="abstract">
                        <p>Gets an image from a given resource.</p>
<div class="aside aside-note">
    <p class="aside-title">Note</p>
    <p>This method will first check whether the requested <code>resource</code> is already in cache or not. If cached,
it returns <code>nil</code> and invoke the <code>completionHandler</code> after the cached image retrieved. Otherwise, it
will download the <code>resource</code>, store it in cache, then call <code>completionHandler</code>.</p>

</div>

                      </div>
                      <div class="declaration">
                        <h4>Declaration</h4>
                        <div class="language">
                          <p class="aside-title">Swift</p>
                          <pre class="highlight swift"><code><span class="kd">@discardableResult</span>
<span class="kd">public</span> <span class="kd">func</span> <span class="nf">retrieveImage</span><span class="p">(</span>
    <span class="n">with</span> <span class="nv">resource</span><span class="p">:</span> <span class="kt"><a href="../Protocols/Resource.html">Resource</a></span><span class="p">,</span>
    <span class="nv">options</span><span class="p">:</span> <span class="kt"><a href="../Typealiases.html#/s:10Kingfisher0A11OptionsInfoa">KingfisherOptionsInfo</a></span><span class="p">?</span> <span class="o">=</span> <span class="kc">nil</span><span class="p">,</span>
    <span class="nv">progressBlock</span><span class="p">:</span> <span class="kt"><a href="../Typealiases.html#/s:10Kingfisher21DownloadProgressBlocka">DownloadProgressBlock</a></span><span class="p">?</span> <span class="o">=</span> <span class="kc">nil</span><span class="p">,</span>
    <span class="nv">downloadTaskUpdated</span><span class="p">:</span> <span class="kt"><a href="../Typealiases.html#/s:10Kingfisher24DownloadTaskUpdatedBlocka">DownloadTaskUpdatedBlock</a></span><span class="p">?</span> <span class="o">=</span> <span class="kc">nil</span><span class="p">,</span>
    <span class="nv">completionHandler</span><span class="p">:</span> <span class="p">((</span><span class="kt"><a href="../Enums/Result.html">Result</a></span><span class="o">&lt;</span><span class="kt"><a href="../Structs/RetrieveImageResult.html">RetrieveImageResult</a></span><span class="p">,</span> <span class="kt"><a href="../Enums/KingfisherError.html">KingfisherError</a></span><span class="o">&gt;</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Void</span><span class="p">)?)</span> <span class="o">-&gt;</span> <span class="kt"><a href="../Structs/DownloadTask.html">DownloadTask</a></span><span class="p">?</span></code></pre>

                        </div>
                      </div>
                      <div>
                        <h4>Parameters</h4>
                        <table class="graybox">
                          <tbody>
                            <tr>
                              <td>
                                <code>
                                <em>resource</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>The <code><a href="../Protocols/Resource.html">Resource</a></code> object defines data information like key or URL.</p>
                                </div>
                              </td>
                            </tr>
                            <tr>
                              <td>
                                <code>
                                <em>options</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>Options to use when creating the animated image.</p>
                                </div>
                              </td>
                            </tr>
                            <tr>
                              <td>
                                <code>
                                <em>progressBlock</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>Called when the image downloading progress gets updated. If the response does not contain an
           <code>expectedContentLength</code>, this block will not be called. <code>progressBlock</code> is always called in
           main queue.</p>
                                </div>
                              </td>
                            </tr>
                            <tr>
                              <td>
                                <code>
                                <em>downloadTaskUpdated</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>Called when a new image downloading task is created for current image retrieving. This
                 usually happens when an alternative source is used to replace the original (failed)
                 task. You can update your reference of <code><a href="../Structs/DownloadTask.html">DownloadTask</a></code> if you want to manually <code>cancel</code>
                 the new task.</p>
                                </div>
                              </td>
                            </tr>
                            <tr>
                              <td>
                                <code>
                                <em>completionHandler</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>Called when the image retrieved and set finished. This completion handler will be invoked
               from the <code>options.callbackQueue</code>. If not specified, the main queue will be used.</p>
                                </div>
                              </td>
                            </tr>
                          </tbody>
                        </table>
                      </div>
                      <div>
                        <h4>Return Value</h4>
                        <p>A task represents the image downloading. If there is a download task starts for <code>.network</code> resource,
       the started <code><a href="../Structs/DownloadTask.html">DownloadTask</a></code> is returned. Otherwise, <code>nil</code> is returned.</p>
                      </div>
                      <div class="slightly-smaller">
                        <a href="https://github.com/onevcat/Kingfisher/tree/5.12.0/Sources/General/KingfisherManager.swift#L146-L161">Show on GitHub</a>
                      </div>
                    </section>
                  </div>
                </li>
                <li class="item">
                  <div>
                    <code>
                    <a name="/s:10Kingfisher0A7ManagerC13retrieveImage4with7options13progressBlock19downloadTaskUpdated17completionHandlerAA08DownloadJ0VSgAA6SourceO_SayAA0A15OptionsInfoItemOGSgys5Int64V_ATtcSgyALcSgyAA6ResultOyAA08RetrievedT0VAA0A5ErrorOGcSgtF"></a>
                    <a name="//apple_ref/swift/Method/retrieveImage(with:options:progressBlock:downloadTaskUpdated:completionHandler:)" class="dashAnchor"></a>
                    <a class="token" href="#/s:10Kingfisher0A7ManagerC13retrieveImage4with7options13progressBlock19downloadTaskUpdated17completionHandlerAA08DownloadJ0VSgAA6SourceO_SayAA0A15OptionsInfoItemOGSgys5Int64V_ATtcSgyALcSgyAA6ResultOyAA08RetrievedT0VAA0A5ErrorOGcSgtF">retrieveImage(with:options:progressBlock:downloadTaskUpdated:completionHandler:)</a>
                    </code>
                  </div>
                  <div class="height-container">
                    <div class="pointer-container"></div>
                    <section class="section">
                      <div class="pointer"></div>
                      <div class="abstract">
                        <p>Gets an image from a given resource.</p>
<div class="aside aside-note">
    <p class="aside-title">Note</p>
    <p>This method will first check whether the requested <code>source</code> is already in cache or not. If cached,
it returns <code>nil</code> and invoke the <code>completionHandler</code> after the cached image retrieved. Otherwise, it
will try to load the <code>source</code>, store it in cache, then call <code>completionHandler</code>.</p>

</div>

                      </div>
                      <div class="declaration">
                        <h4>Declaration</h4>
                        <div class="language">
                          <p class="aside-title">Swift</p>
                          <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">func</span> <span class="nf">retrieveImage</span><span class="p">(</span>
    <span class="n">with</span> <span class="nv">source</span><span class="p">:</span> <span class="kt"><a href="../Enums/Source.html">Source</a></span><span class="p">,</span>
    <span class="nv">options</span><span class="p">:</span> <span class="kt"><a href="../Typealiases.html#/s:10Kingfisher0A11OptionsInfoa">KingfisherOptionsInfo</a></span><span class="p">?</span> <span class="o">=</span> <span class="kc">nil</span><span class="p">,</span>
    <span class="nv">progressBlock</span><span class="p">:</span> <span class="kt"><a href="../Typealiases.html#/s:10Kingfisher21DownloadProgressBlocka">DownloadProgressBlock</a></span><span class="p">?</span> <span class="o">=</span> <span class="kc">nil</span><span class="p">,</span>
    <span class="nv">downloadTaskUpdated</span><span class="p">:</span> <span class="kt"><a href="../Typealiases.html#/s:10Kingfisher24DownloadTaskUpdatedBlocka">DownloadTaskUpdatedBlock</a></span><span class="p">?</span> <span class="o">=</span> <span class="kc">nil</span><span class="p">,</span>
    <span class="nv">completionHandler</span><span class="p">:</span> <span class="p">((</span><span class="kt"><a href="../Enums/Result.html">Result</a></span><span class="o">&lt;</span><span class="kt"><a href="../Structs/RetrieveImageResult.html">RetrieveImageResult</a></span><span class="p">,</span> <span class="kt"><a href="../Enums/KingfisherError.html">KingfisherError</a></span><span class="o">&gt;</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Void</span><span class="p">)?)</span> <span class="o">-&gt;</span> <span class="kt"><a href="../Structs/DownloadTask.html">DownloadTask</a></span><span class="p">?</span></code></pre>

                        </div>
                      </div>
                      <div>
                        <h4>Parameters</h4>
                        <table class="graybox">
                          <tbody>
                            <tr>
                              <td>
                                <code>
                                <em>source</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>The <code><a href="../Enums/Source.html">Source</a></code> object defines data information from network or a data provider.</p>
                                </div>
                              </td>
                            </tr>
                            <tr>
                              <td>
                                <code>
                                <em>options</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>Options to use when creating the animated image.</p>
                                </div>
                              </td>
                            </tr>
                            <tr>
                              <td>
                                <code>
                                <em>progressBlock</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>Called when the image downloading progress gets updated. If the response does not contain an
           <code>expectedContentLength</code>, this block will not be called. <code>progressBlock</code> is always called in
           main queue.</p>
                                </div>
                              </td>
                            </tr>
                            <tr>
                              <td>
                                <code>
                                <em>downloadTaskUpdated</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>Called when a new image downloading task is created for current image retrieving. This
                 usually happens when an alternative source is used to replace the original (failed)
                 task. You can update your reference of <code><a href="../Structs/DownloadTask.html">DownloadTask</a></code> if you want to manually <code>cancel</code>
                 the new task.</p>
                                </div>
                              </td>
                            </tr>
                            <tr>
                              <td>
                                <code>
                                <em>completionHandler</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>Called when the image retrieved and set finished. This completion handler will be invoked
               from the <code>options.callbackQueue</code>. If not specified, the main queue will be used.</p>
                                </div>
                              </td>
                            </tr>
                          </tbody>
                        </table>
                      </div>
                      <div>
                        <h4>Return Value</h4>
                        <p>A task represents the image downloading. If there is a download task starts for <code>.network</code> resource,
       the started <code><a href="../Structs/DownloadTask.html">DownloadTask</a></code> is returned. Otherwise, <code>nil</code> is returned.</p>
                      </div>
                      <div class="slightly-smaller">
                        <a href="https://github.com/onevcat/Kingfisher/tree/5.12.0/Sources/General/KingfisherManager.swift#L185-L202">Show on GitHub</a>
                      </div>
                    </section>
                  </div>
                </li>
              </ul>
            </div>
            <div class="task-group">
              <div class="task-name-container">
                <a name="/Deprecated"></a>
                <a name="//apple_ref/swift/Section/Deprecated" class="dashAnchor"></a>
                <div class="section-name-container">
                  <a class="section-name-link" href="#/Deprecated"></a>
                  <h3 class="section-name"><p>Deprecated</p>
</h3>
                </div>
              </div>
              <ul class="item-container">
                <li class="item">
                  <div>
                    <code>
                    <a name="/s:10Kingfisher0A7ManagerC13retrieveImage4with7options13progressBlock17completionHandlerAA12DownloadTaskVSgAA8Resource_p_SayAA0A15OptionsInfoItemOGSgys5Int64V_ARtcSgySo7UIImageCSg_So7NSErrorCSgAA9CacheTypeO10Foundation3URLVSgtcSgtF"></a>
                    <a name="//apple_ref/swift/Method/retrieveImage(with:options:progressBlock:completionHandler:)" class="dashAnchor"></a>
                    <a class="token" href="#/s:10Kingfisher0A7ManagerC13retrieveImage4with7options13progressBlock17completionHandlerAA12DownloadTaskVSgAA8Resource_p_SayAA0A15OptionsInfoItemOGSgys5Int64V_ARtcSgySo7UIImageCSg_So7NSErrorCSgAA9CacheTypeO10Foundation3URLVSgtcSgtF">retrieveImage(with:options:progressBlock:completionHandler:)</a>
                    </code>
                  </div>
                  <div class="height-container">
                    <div class="pointer-container"></div>
                    <section class="section">
                      <div class="pointer"></div>
                      <div class="abstract">
                        <p>Get an image with resource.
If <code>.empty</code> is used as <code>options</code>, Kingfisher will seek the image in memory and disk first.
If not found, it will download the image at <code>resource.downloadURL</code> and cache it with <code>resource.cacheKey</code>.
These default behaviors could be adjusted by passing different options. See <code>KingfisherOptions</code> for more.</p>

                      </div>
                      <div class="declaration">
                        <h4>Declaration</h4>
                        <div class="language">
                          <p class="aside-title">Swift</p>
                          <pre class="highlight swift"><code><span class="kd">@available(*, deprecated, message: "Use `Result` based callback instead.")</span>
<span class="kd">@discardableResult</span>
<span class="kd">public</span> <span class="kd">func</span> <span class="nf">retrieveImage</span><span class="p">(</span><span class="n">with</span> <span class="nv">resource</span><span class="p">:</span> <span class="kt"><a href="../Protocols/Resource.html">Resource</a></span><span class="p">,</span>
                          <span class="nv">options</span><span class="p">:</span> <span class="kt"><a href="../Typealiases.html#/s:10Kingfisher0A11OptionsInfoa">KingfisherOptionsInfo</a></span><span class="p">?,</span>
                          <span class="nv">progressBlock</span><span class="p">:</span> <span class="kt"><a href="../Typealiases.html#/s:10Kingfisher21DownloadProgressBlocka">DownloadProgressBlock</a></span><span class="p">?,</span>
                          <span class="nv">completionHandler</span><span class="p">:</span> <span class="kt"><a href="../Typealiases.html#/s:10Kingfisher17CompletionHandlera">CompletionHandler</a></span><span class="p">?)</span> <span class="o">-&gt;</span> <span class="kt"><a href="../Structs/DownloadTask.html">DownloadTask</a></span><span class="p">?</span></code></pre>

                        </div>
                      </div>
                      <div>
                        <h4>Parameters</h4>
                        <table class="graybox">
                          <tbody>
                            <tr>
                              <td>
                                <code>
                                <em>resource</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>Resource object contains information such as <code>cacheKey</code> and <code>downloadURL</code>.</p>
                                </div>
                              </td>
                            </tr>
                            <tr>
                              <td>
                                <code>
                                <em>options</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>A dictionary could control some behaviors. See <code><a href="../Typealiases.html#/s:10Kingfisher0A11OptionsInfoa">KingfisherOptionsInfo</a></code> for more.</p>
                                </div>
                              </td>
                            </tr>
                            <tr>
                              <td>
                                <code>
                                <em>progressBlock</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>Called every time downloaded data changed. This could be used as a progress UI.</p>
                                </div>
                              </td>
                            </tr>
                            <tr>
                              <td>
                                <code>
                                <em>completionHandler</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>Called when the whole retrieving process finished.</p>
                                </div>
                              </td>
                            </tr>
                          </tbody>
                        </table>
                      </div>
                      <div>
                        <h4>Return Value</h4>
                        <p>A <code><a href="../Classes/RetrieveImageTask.html">RetrieveImageTask</a></code> task object. You can use this object to cancel the task.</p>
                      </div>
                      <div class="slightly-smaller">
                        <a href="https://github.com/onevcat/Kingfisher/tree/5.12.0/Sources/General/Deprecated.swift#L96-L108">Show on GitHub</a>
                      </div>
                    </section>
                  </div>
                </li>
              </ul>
            </div>
          </div>
        </section>

      </article>
    </div>
    <section class="footer">
      <p>&copy; 2019 <a class="link" href="https://onevcat.com" target="_blank" rel="external">Wei Wang</a>. All rights reserved. (Last updated: 2019-12-13)</p>
      <p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.13.0</a>, a <a class="link" href="https://realm.io" target="_blank" rel="external">Realm</a> project.</p>
    </section>
  </body>
</div>
</html>
